package com.cltech.frame.query;

import org.springframework.data.annotation.QueryAnnotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * SmartQuery.
 * @author guanbo
 * @version 1.0.0.0
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.METHOD })
@QueryAnnotation
@Documented
public @interface SmartQuery {
    /**
     * Sql.
     * @return Sql
     */
    String value();
    /**
     * Sql是否是freemarker.
     * @return boolean
     */
    boolean freemarkerTemplate() default false;
    /**
     * Sql是原生Sql.
     * @return boolean
     */
    boolean nativeQuery() default true;
}
